package com.zq.app.util;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

/**
 * jdbc工具类
* @ClassName: JDBCUtil 
* @Description: TODO(这里用一句话描述这个类的作用) 
* @author 强哥 
* @date 2018年1月9日 下午5:09:07 
*
 */
public class JDBCUtil {
	/**
	 * 获取数据库连接
	* @Title: getConnection 
	* @Description: TODO(这里用一句话描述这个方法的作用) 
	* @author 强哥
	* @date 2018年1月9日 下午5:24:17 
	* @return Connection    返回类型 
	* @throws
	 */
	public static  Connection getConnection() throws ClassNotFoundException, SQLException, IOException{
//		String url="jdbc:mysql://localhost:3306/spring_data";
//		String user="root";
//		String password = "";
//		String driverClass="com.mysql.jdbc.Driver";
		Properties p = new Properties();
		InputStream is = 
				JDBCUtil.class.getClassLoader().getResourceAsStream("db.properties");
		p.load(is);
		String url=p.getProperty("jdbc.url");
		String user=p.getProperty("jdbc.username");
		String password = p.getProperty("jdbc.password");
		String driverClass=p.getProperty("jdbc.driverClassName");
		Class.forName(driverClass);
		return DriverManager.getConnection(url, user, password);
	}
	/**
	 * 释放数据库连接资源
	* @Title: release 
	* @Description: TODO(这里用一句话描述这个方法的作用) 
	* @author 强哥
	* @date 2018年1月9日 下午5:24:26 
	* @return void    返回类型 
	* @throws
	 */
	public static void release(ResultSet rs,
				Statement stat,Connection conn){
		if(rs !=null){
			try {
				rs.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		if(stat !=null){
			try {
				stat.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		if(conn !=null){
			try {
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	
	
}
